home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / games / sakiba / source / sound.c < prev    next >
Text File  |  2000-06-20  |  3KB  |  134 lines

  1. /**********************************************
  2.  
  3.     格闘シミュレーション「さきば」
  4.  
  5.                 音楽
  6.  
  7.  **********************************************/
  8.  
  9. #include    <stdio.h>
  10. #include    <stdlib.h>
  11.  
  12. #include    "zmusic.h"
  13. #include    "sakiba.h"
  14. #include    "sound.h"
  15.  
  16.  
  17. #define    BGM_MAX        16                /* BGM数 */
  18.  
  19. static char*    main_bgm[BGM_MAX][2] = {        /* メインBGM */
  20.             {"ACG002MK", NULL},
  21.             {"STG201MK", NULL},
  22.             {"STG202MK", NULL},
  23.             {"STG203MK", NULL},
  24.             {"PT033MK", NULL},
  25.             {"PT034MK", NULL},
  26.             {"PT041MK", NULL},
  27.             {"PT045MK", NULL},
  28.             {"PT048MK", NULL},
  29.             {"MI07", NULL},
  30.             {"M_AVG1", NULL},
  31.             {"BATTLE1", NULL},
  32.             {"BATTLE2", NULL},
  33.             {"DAKYOK10", "DASND3"},
  34.             {"DAKYOK11", "DASND3"},
  35.             {"DAKYOK12", "DASND3"}
  36. };
  37.  
  38.  
  39. #define    SELECT_MAX    5                /* BGM数 */
  40.  
  41. static char*    select_bgm[SELECT_MAX][2] = {        /* セレクトBGM */
  42.             {"NE1", "MOM5SND"},
  43.             {"STG207MK", NULL},
  44.             {"PT106MK", NULL},
  45.             {"DAKYOK15", "DASND3"},
  46.             {"KWSEL2", "KW_INIT"}
  47.     };
  48.  
  49.  
  50. /**************************
  51.     メインBGM演奏開始
  52.  **************************/
  53. void    play_main_bgm(void)
  54. {
  55.     int    num;
  56.  
  57.     num = rnd(BGM_MAX);                /* BGM番号 */
  58.     if ( main_bgm[num][1] ) {            /* 音色設定 */
  59.         play_music(main_bgm[num][1]);
  60.     }
  61.     play_music(main_bgm[num][0]);            /* 演奏開始 */
  62. }
  63.  
  64. /****************************
  65.     セレクトBGM演奏開始
  66.  ****************************/
  67. void    play_select_bgm(void)
  68. {
  69.     int    num;
  70.  
  71.     num = rnd(SELECT_MAX);                /* BGM番号 */
  72.     if ( select_bgm[num][1] ) {            /* 音色設定 */
  73.         play_music(select_bgm[num][1]);
  74.     }
  75.     play_music(select_bgm[num][0]);            /* 演奏開始 */
  76. }
  77.  
  78.  
  79. /***************************************
  80.     演奏開始
  81.     引数    name = ファイルネーム
  82.  ***************************************/
  83. void    play_music(char* name)
  84. {
  85.     if ( zm_ver() & 0xffff ) {
  86.         zmd_play(name);
  87.     }
  88. }
  89.  
  90. /**************
  91.     演奏停止
  92.  **************/
  93. void    stop_music(void)
  94. {
  95.     if ( zm_ver() & 0xffff ) {
  96.         m_stop(0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
  97.     }
  98. }
  99.  
  100. /************************
  101.     演奏フェードアウト
  102.  ************************/
  103. void    fadeout_music(void)
  104. {
  105.     if ( zm_ver() & 0xffff ) {
  106.         m_fadeout(16);
  107.     }
  108. }
  109.  
  110. /******************************
  111.     効果音を鳴らす
  112.     引数    num = 音番号
  113.  ******************************/
  114. void    play_sound(int num)
  115. {
  116.     if ( zm_ver() & 0xffff ) {
  117.         m_pcmplay(num, 3, 4);
  118.     }
  119. }
  120.  
  121. /********************************
  122.     音源初期化
  123.     戻り値    0 : 初期化完了
  124.         1 : 初期化失敗
  125.  ********************************/
  126. int    init_sound(void)
  127. {
  128.     if ( zm_ver() & 0xffff ) {
  129.         m_init();                /* 音源初期化 */
  130.     }
  131.     return    0;
  132. }
  133.  
  134. /************** End of File ****************************************************/